package com.cskaoyan.mapper;

import com.cskaoyan.model.Order;
import com.cskaoyan.model.OrderExample;
import com.cskaoyan.model.OrderInfo;
import com.cskaoyan.model.vo.OrderChartVO;
import com.cskaoyan.model.vo.WxOrderListVO;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface OrderMapper {
    long countByExample(OrderExample example);

    int deleteByExample(OrderExample example);

    int deleteByPrimaryKey(Integer id);

    int insert(Order record);

    int insertSelective(Order record);

    List<Order> selectByExample(OrderExample example);

    Order selectByPrimaryKey(Integer id);

    int updateByExampleSelective(@Param("record") Order record, @Param("example") OrderExample example);

    int updateByExample(@Param("record") Order record, @Param("example") OrderExample example);

    int updateByPrimaryKeySelective(Order record);

    int updateByPrimaryKey(Order record);

    List<OrderChartVO> selectOrderDataGroupByDay();

    List<WxOrderListVO> selectAll();

    List<WxOrderListVO> selectOrderListByOrderStatus(@Param("statusList")short... i);

    OrderInfo selectOrderInfoByPrimaryKey(Integer orderId);

    void updateCommentByGoodsId(Integer goodsId);

}
